package com.szewec.ps.base;

/**
 * 文件上传相关枚举类
 */
public class FileUpload {

    /**
     * 附件类型枚举类
     */
    public enum RoadInvestigationFileBizTypeEnum implements Enums.IKeyValueEnum {
        //------------------- 路段设施调查 ------------------------
        // 机动车道附件
        ROAD_MOTORWAY_FILE_BIZ_TYPE("roadMotorway_file", "4"),
        // 交通隔离设施附件
        ROAD_TRAFFIC_ISOLATION_FILE_BIZ_TYPE("roadTrafficIsolation_file", "4"),
        // 慢行道附件
        ROAD_SLOW_LANE_FILE_BIZ_TYPE("roadSlowLane_file", "4"),
        // 桥梁附件
        ROAD_BRIDGE_FILE_BIZ_TYPE("roadBridge_file", "4"),
        // 隧道附件
        ROAD_TUNNEL_FILE_BIZ_TYPE("roadTunnel_file", "4"),
        // 现代轨道交通附件
        ROAD_MODERN_URBAN_TRANSIT_FILE_BIZ_TYPE("roadModernUrbanTransit_file", "4"),
        // 道路沿线设施附件
        ROAD_FACILITIES_ALONG_FILE_BIZ_TYPE("roadFacilitiesAlong_file", "4"),
        //------------------- 路口设施调查 ------------------------
        // 道路沿线设施附件
        ROAD_INTERSECTION_TASK_FILE_BIZ_TYPE("roadIntersectionTask_file", "4"),
        // 进口数
        ROAD_ENTRANCE_ROAD_FILE_BIZ_TYPE("roadEntranceRoad_file", "4"),
        // 中央分隔带
        ROAD_CENTER_DIVIDER_FILE_BIZ_TYPE("roadCenterDivider_file", "4"),
        // 人行横道
        ROAD_SIDEWALK_FILE_BIZ_TYPE("roadSidewalk_file", "4"),
        // 非机动车道
        ROAD_BICYCLE_LANE_FILE_BIZ_TYPE("roadBicycleLane_file", "4"),
        // 待行区
        ROAD_WAITING_AREA_FILE_BIZ_TYPE("roadWaitingArea_file", "4"),
        // 慢行道
        ROAD_INTERSECTION_SLOW_LANE_FILE_BIZ_TYPE("roadIntersectionSlowLane_file", "4"),
        // 交织段
        ROAD_WEAVING_SECTION_FILE_BIZ_TYPE("roadWeavingSection_file", "4"),
        // 方向岛
        ROAD_DIRECTION_ISLAND_FILE_BIZ_TYPE("roadDirectionIsland_file", "4"),
        // 左转匝道
        ROAD_LEFT_GATEWAY_FILE_BIZ_TYPE("roadLeftGateway_file", "4"),
        // 右转匝道
        ROAD_RIGHT_GATEWAY_FILE_BIZ_TYPE("roadRightGateway_file", "4"),
        ;

        private String bizType; // 附件类型，用于pmms/file接口
        private String comment; // 附件备注，用于pmms/file接口

        RoadInvestigationFileBizTypeEnum(String bizType, String comment) {
            this.bizType = bizType;
            this.comment = comment;
        }

        @Override
        public String getKey() {
            return bizType;
        }

        @Override
        public String getValue() {
            return comment;
        }
    }

    /**
     * 文件类型枚举类
     */
    public enum MediaFileTypeEnum implements Enums.IKeyValueEnum {
        VIDEO_FILE(1, "视频文件"),
        PHOTO_FILE(0, "照片文件"),
        ;

        private Integer key;
        private String value;

        MediaFileTypeEnum(Integer key, String value) {
            this.key = key;
            this.value = value;
        }

        @Override
        public Integer getKey() {
            return key;
        }

        @Override
        public String getValue() {
            return value;
        }
    }

    public enum MediaFileAchieveWayEnum implements Enums.IKeyValueEnum {
        PHOTOGRAPH(11, "拍照"),
        RECORDING(22, "录制"),
        LOCAL_GALLERY(33, "本地图库");

        private Integer key;
        private String value;

        MediaFileAchieveWayEnum(Integer key, String value) {
            this.key = key;
            this.value = value;
        }

        @Override
        public Integer getKey() {
            return key;
        }

        @Override
        public String getValue() {
            return value;
        }
    }
}
